Vermits we op Cloud9 ontwikkelen moeten we ervoor zorgen dat de app op de juiste poort luistert:
namespace aspdotnet
{
public class Program
{
public static void Main(string[] args)
{
BuildWebHost(args).Run();
}
public static IWebHost BuildWebHost(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>()
.UseUrls("http://0.0.0.0:8080")
.Build();
}
}
Om statische bestanden te kunnen serveren, moet je de middleware zo configureren dat statische bestanden aan de pipeline toegevoegd kunnen worden. De static file middleware kan worden geconfigureerd door het pakket Microsoft.AspNetCore.StaticFiles toe te voegen aan je project en vervolgens de UseStaticFiles methode op te roepen in de Startup.Configure methode:
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
app.UseStaticFiles();
app.Run(async (context) =>
{
await context.Response.WriteAsync("Hello World!");
});}
Ga naar de dotnetcore/aspdotnet map en run de app:Cloud9 Run aspdotnet projectIn de terminal:
cd dotnetcore/aspdotnet
dotnet run
rechtermuisklik http://0.0.0.8080
open
Dat is het resultaat:aspdotnet web result dotnet run
De index.html pagina wordt niet geladen. Om die te laden type je achter de url /index.html:aspdotnet web result static files added dotnet run
In ASP.NET Core is het mogelijk om aan te geven dat wanneer een url wordt opgegeven automatisch een default pagina wordt ingeladen. Standaard zijn dat:
default.htm
default.html
index.htm
index.html
Om aan te geven dat één van die pagina's geladen moet worden voeg je app.UseDefaultFiles toe aan de Configure methode. Zorg ervoor dat je die vóór app.useStaticFiles plaatst:
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
app.useDefaultFiles();
app.UseStaticFiles();
}
Run de app opnieuw, in de terminal:
dotnet run
rechtermuisklik http://0.0.0.8080
open
Nu wordt de default pagina index.html automatisch geladen.
Synchroniseer je Cloud9 workspace met je lokale computer:
Op Cloud9:
ga naar de root van je workspace: cd /home/ubuntu/workspace
git status
git add --all
git commit -m "aspdotnet statische pagina toegevoegd op Cloud9"